package br.com.edoc.controller.listagem;

import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import br.com.edoc.entidade.Perfil;
import br.com.edoc.excecoes.ExceptionApplication;
import br.com.edoc.gerentes.GerenteControleAcesso;
@ManagedBean(name="listagemPerfil")
@SessionScoped
public class ListagemPerfilController extends ListagemPadraoController{
	/**
	 * 
	 */
	private static final long serialVersionUID = 8077999132369294824L;
	private List<Perfil> lista;
	public void entidadeSelecionada(){
		getOuvinteSelecao().selecaoFeita(getQuery());
	}
	@Override
	public String getNome() {
		// TODO Auto-generated method stub
		return "listagemPerfil";
	}

	@Override
	public void acaoPesquisar() {
		// TODO Auto-generated method stub
		setLista(null);
	}

	public List<Perfil> getLista() {
		if(lista == null){
			GerenteControleAcesso gc = (GerenteControleAcesso) getAtendente().chamaGerenteControleAcesso();
			try {
				setLista(gc.obterListaEntidade(Perfil.class, getQuery(), "descricao", 100));
			} catch (ExceptionApplication e) {
				// TODO Auto-generated catch block
				addErroMessage(e.getMessage());
			}
		}
		return lista;
	}

	public void setLista(List<Perfil> lista) {
		this.lista = lista;
	}
	
}
